home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / dsp / dspgroup / macros.arc / NEGX.ASM < prev    next >
Encoding:
Assembly Source File  |  1983-11-17  |  2.1 KB  |  27 lines

  1.  
  2. *                                                                               
  3. *NEGATE DOUBLE WORD                                                             
  4. *                                                                               
  5. NEGX   $MACRO A          NEGATE DOUBLE                                          
  6.        $VAR ST,SP,SM                                                            
  7.        $ASG '*+' TO SP.S                                                        
  8.        $ASG '*-' TO SM.S                                                        
  9.        $ASG '*' TO ST.S                                                         
  10.        ZAC                                                                      
  11.        $IF A.SV=SM.SV                                                           
  12.        SUBS *-                                                                  
  13.        SUBH *+           SUBTRACT  '*-'                                         
  14.        SACX *-           SAVE '*-'                                              
  15.        $ELSE                                                                    
  16.        $IF A.SV=SP.SV                                                           
  17.        SUBX *            SUBTRACT  '*'                                          
  18.        SACX *+           SAVE '*+'                                              
  19.        $ELSE                                                                    
  20.        $IF A.SV=ST.SV                                                           
  21.        SUBX *            SUBTRACT  '*'                                          
  22.        SACX *            SAVE '*'                                               
  23.        $ELSE                                                                    
  24.        SUBX :A:          SUBTRACT  :A:                                          
  25.        SACX :A:          SAVE :A:                                               
  26.        $ENDIF                                                                   
  27.        $END